import numpy as np
arr = np.array([0, 1, 2, 3, 4, 5, 6, 7, 8, 9])

# 基本切片
print("前5个元素:", arr[:5])
print("后3个元素:", arr[-3:])
print("每隔2个取一个:", arr[::2])

# 多维数组索引
arr_2d = np.array([[1, 2, 3], [4, 5, 6], [7, 8, 9]])
print("第二行:", arr_2d[1])
print("第一行第二列:", arr_2d[0, 1])
print("前两行的后两列:\n", arr_2d[:2, 1:])

# 布尔索引
bool_idx = arr > 5
print("大于5的元素:", arr[bool_idx])
# Output:
# 前5个元素: [0 1 2 3 4]
# 后3个元素: [7 8 9]
# 每隔2个取一个: [0 2 4 6 8]
# 第二行: [4 5 6]
# 第一行第二列: 2
# 前两行的后两列:
#  [[2 3]
#  [5 6]]
# 大于5的元素: [6 7 8 9]